System and method for generating and displaying avatars

ABSTRACT

Among other things, embodiments of the present disclosure provide systems and methods for modifying avatar components of avatar datasets for multiple users, generating avatars based on the datasets, and displaying multiple avatars on a display screen of a graphical user interface.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of, and claims priority to, U.S.patent application Ser. No. 13/979,974, filed May 8, 2013 and entitled“SYSTEM AND METHOD FOR ADAPTABLE AVATARS,” which in turn claims priorityto U.S. Provisional Patent Application Ser. No. 61/644,057, filed May 8,2012, and entitled “SYSTEM AND METHOD FOR ADAPTABLE AVATARS,” thecontents of which are incorporated herein by reference in theirentirety.

FIELD OF THE INVENTION

The present invention relates generally to providing userrepresentations in computing environments. The present invention furtherrelates to managing a particular user's representation in avatar form incomputing environments.

BACKGROUND OF THE INVENTION

Environments that use avatars to represent users typically provide theirown avatar creation tools. An avatar created by a user in one onlineenvironment is usually confined to that environment, so for each newenvironment, the user typically must create a separate, differentavatar. To update characteristics of multiple avatars, the user mustchange each avatar separately within each environment, which can be timeconsuming.

Despite the apparent inefficiency of such a system, having amultiplicity of avatars may serve a practical purpose. Just as in reallife, digital users exist in multiple contexts and may require differentidentities in different environments; for example, one identity forwork, another for family and friends, another for video games, othersfor interests and hobbies, and so on. A different avatar in eachsituation allows the user to present a contextually relevant appearance.

Nevertheless, as the number of digital environments grows, the user iscompelled to create and manage an ever-increasing number of avatars,which creates a disincentive to design a separate avatar for each newenvironment. This reduces the value of avatars generally, and forenvironments that use avatars, adds a barrier to adoption.

There are mechanisms that attempt to solve this problem by enablingusers to use the same avatar in multiple environments, such as onedisclosed by Mason et al. in U.S. patent application Ser. No. 12/279,643(published as US 2010/0011422 A1).

However, such mechanisms require an avatar to be rendered identically ineach environment, and therefore fail to provide the avatar's fundamentalbenefits, which include giving the user a contextually relevantidentity, and each environment a consistent look and feel.

Therefore, what is needed is a solution to address at least some ofthese limitations.

SUMMARY OF THE INVENTION

In accordance with an aspect of the present invention, the presentdisclosure relates to a system and method for providing avatarsadaptable to multiple environments. Avatar means any representation of auser, which may be manifested visually in an environment. For example,an avatar may be manifested as a character in a video game, a userprofile picture in a social networking website, or an emoticon in amessaging application, etc. Environment in this disclosure broadly meansany environment where an avatar may be manifested. For example, anenvironment may be an avatar creation application, video game, socialnetworking website, messaging application, smartphone address book, orany other application where a user may want to have a representation.

In accordance with an aspect of the present invention, moreparticularly, the system and method provides data about an avatar'scomponents, such as discrete facial and bodily features, and therelative positions of the features to another, for the purpose ofrendering different versions of a user's avatar which may be visuallyadapted to suit multiple environments.

In accordance with an aspect of the present invention, the system andmethod enables data about a single avatar to be adapted and re-renderedin multiple environments in a virtually unlimited number of ways. Thisallows service providers (such as operators of a service environment) toreap the benefits of providing avatars designed to visually match theirenvironments, while relieving the user of the need to create a newavatar specifically for each service. The user can instead create anavatar in one environment, and link the avatar data to a user account ina second environment. The avatar can then be automatically re-renderedwith the second environment's art set using avatar data from the firstenvironment. The second environment can therefore choose not to offer anavatar creation tool at all, yet still give the user the full experienceof interacting in its environment with a relevant and personalizedavatar.

In accordance with an aspect of the present invention, there is provideda method comprising: a first computing device maintaining avatar datadescribing at least one avatar component of a first avatar designed fora first service environment, the avatar data associated with anidentifier; the first computing device receiving a request from a secondservice environment, the request including identification data and atleast one requested avatar component; based at least partly on acorrespondence between the respective identifier and the receivedidentification data, the first computing device transmitting to thesecond service environment the avatar data describing the at least oneavatar component corresponding to the at least one requested avatarcomponent type; and the second service environment generating a secondavatar for a second service environment based at least partly on theavatar data received from the first computing device.

In accordance with an aspect of the present invention, in this respect,before explaining at least one embodiment of the invention in detail, itis to be understood that the invention is not limited in its applicationto the details of construction and to the arrangements of the componentsset forth in the following description or the examples provided therein,or illustrated in the drawings. The invention is capable of otherembodiments and of being practiced and carried out in various ways.Also, it is to be understood that the phraseology and terminologyemployed herein are for the purpose of description and should not beregarded as limiting.

BRIEF DESCRIPTION OF THE DRAWINGS

In the drawings, embodiments of the invention are illustrated by way ofexample. It is to be expressly understood that the description anddrawings are only for the purpose of illustration and as an aid tounderstanding, and are not intended as a definition of the limits of theinvention.

FIG. 1 illustrates an example of a computer network implementation ofthe system of the present invention.

FIG. 2 is a table showing an example of avatar data in accordance withthe present invention.

FIGS. 3a, 3b, 3c, and 3d show examples of an avatar composition utility.

FIG. 4 is workflow diagram illustrating a possible embodiment of themethod of the present invention.

FIG. 5 illustrate a generic computer system which may provide a suitableoperating environment for various embodiments.

DETAILED DESCRIPTION

As noted above, the present disclosure relates to a system and methodfor providing avatars adaptable to multiple environments.

In an aspect, the system and method enables data about a single avatarto be adapted and re-rendered in a virtually unlimited number of ways.This is achieved by generating data about an avatar's discrete facialand bodily features, and each feature's relative position to another,for the purpose of rendering different versions of that avatar which arevisually adapted to suit multiple service environments.

This allows a service provider to reap the benefits of providing userswith avatars that visually match its service environment, whilerelieving the user of the requirement to create a separate avatarspecifically for that service.

Avatars are typically designed and intended for use in a boundedenvironment, such as a web portal, branded application or website, orvideo game. Avatars in each service environment may have a distinct lookand feel, and services that use avatars may not want to allow sharing oftheir avatars for use in other environments.

To address the need for each environment to maintain its own look andfeel, and simultaneously eliminate the time and effort required of usersto create a new avatar in each environment, the present system andmethod reduces an avatar to a data set of components, which may be usedto re-render a different version of that avatar matched to the look andfeel of another environment. This effectively adapts the avatar intosomething new in each environment, while the use of a common data set ofcomponents provides a consistency between different versions of theavatar in different environments.

An adaptable avatar designed to be location and appearance-agnosticbenefits an environment by automatically customizing an avatar that isappropriate to its look and feel, and provides the user with controlover a consistent set of components for personalized avatars acrossmultiple environments.

Various aspects of the present system and method will now be describedin more detail with reference to the figures.

Referring to FIG. 1 an example of the implementation of the presentinvention is illustrated, as a computer network implemented system. Itshould be understood that FIG. 1 illustrates only one possible computernetwork architecture for implementing the present invention, but theinvention is not limited to the particular implementation shown in FIG.1.

FIG. 1 illustrates a first environment A linked to a server computer(10) and a second environment B linked to a server farm (12). In theimplementation shown in FIG. 1, environment A acts as a host environmentor service environment for enabling an avatar (14) to be rendered in oneor more other environments, in this case second environment B. Servercomputer (10) is linked to a server application (16) that includes anavatar composition utility (18). The server farm (12) may also includean application repository (13). Linked to the application repository(13) is an Application Programming Interface (17) or “API”. The avatarcomposition utility (18) allows one or more authorized users of thefirst environment A to create the avatar (14), following the workflowexplained in greater detail below. The avatar (14) is rendered using adata set of components (22). The data set of components (22) is storedto a database (24). The second environment B may include for example aweb presentment utility (26) that presents a series of Internet pages,based on one or more requests of a user via a browser (not shown). Oneor more of the requests may relate to presentment of an avatar, one ormore operations involving an avatar, or online context for the avatar,as determined by the web presentment utility (26), including based onone or more applications linked to the server farm (12). These requestsare received by the API (17), and optionally the API (17) interpretsthese requests so as to generate and communicate to the server computer(10) a request (28) that is actionable by the server computer (10). Asexplained below, the request (28) may include information forauthenticating the request (28) as being associated with the user, byproviding for example authentication data for the user. The servercomputer (10) acts on the request (28) by interpreting the request (28)and based on this interpretation accessing relevant portions of aprofile (30) associated with the user, which includes or is linked tothe data set of components (22). The relevant portions of the profile(30) will consist of those portions that are responsive to the request(28) in that they contain the information required for the secondenvironment B to render the avatar (14), using the API (17), so as topresent the avatar (14) in a way that complies with the attributes ofthe presentment of the avatar (14), the one or more operations involvingan avatar (14), or online context for the avatar (14), required by thesecond environment B.

In this way, the avatar (14) is rendered to the second environment B ina responsive and contextually relevant way, without the need to deploysubstantial infrastructure on at the server farm (12), i.e. only the API(17) is required.

Avatars may be created from avatar data saved or maintained by acomputing device 100. FIG. 2 shows a table illustrating non-limitingexamples of avatar components. An avatar component may be described by acomponent field and corresponding avatar component data. As shown inFIG. 2 the avatar components may be given a hierarchical structure thatsupports the selective extraction of features based on requests from theAPI, as described above, the organization of data components indifferent types some of which may constitute primary and secondaryelements or features. In one implementation primary features may bepersistent while secondary features may be more likely to be filteredout in favor of use of a feature associated with an on line environment.This file structure enables the mixing of features from the avatarcomponent data and avatar components of a different online environmentso as to adapt the avatar to the different online environment.

Avatar components are combined to form an avatar using an avatarcomposition utility. Operation of the avatar composition utility isillustrated (FIG. 3). Avatar components may be generated by a serviceenvironment (referred to as “Environment A”), and avatar component datamay be assigned to each component, such as a component's category name,category type, gender, subcategory name, and state. A component'scategory name may refer to hairstyle, eyes, nose, jaw, mouth shape, etc.A component's category type may indicate whether the component is aprimary avatar component or secondary avatar component. A component'sgender may indicate whether the component is for male avatars, femaleavatars, or for either gender. A component's subcategory name mayprovide further categorization of the component. A component's state mayprovide contextual or situational information about the component'sappearance. For example, a component may be assigned the category name“mouth”, category type “primary”, gender “either”, subcategory “thin”,and states “smiling” and “open”. Other avatar component data may beassigned to each component, such as a filename and ID. Together, allavatar components comprise an avatar dataset. Avatar datasets may bestored on a computer server and may be made accessible to one or morethird party service environments through an Application ProgrammingInterface (“API”). A third party environment may be referred to as“Environment E” throughout this specification.

Each of the service environments may operate on a respective computingdevice (e.g. a computer server) or be associated with a respectivecomputing device. Each service environment may also be associated withor operate on a single computing device, in the case of a videogameconsole or personal computer operating multiple games or applicationslocally. Each service environment may define its own avatar definitionsand requirements. For example, while Environment A may require avatarcomponents related to the avatar's face and body, Environment E may onlyrequire avatar components related to the avatar's face.

Avatars may be created locally on a particular computing device for aservice environment, and then transmitted to a computer serverconfigured with operating or maintaining some aspects of the serviceenvironment. The computer server may maintain each avatar datasetcreated in this way, and make avatar datasets, or data derivedtherefrom, available to other service environments operating either onthe same computer server, or on a different computing device.

Now referring to FIGS. 3a, 3b, 3c, and 3d , shown is a possibleembodiment of the avatar composition utility, and a possible workflowenabled by this utility. An avatar composition utility may presentavatar components to a user, which the user may individually orcollectively select and then customize by repositioning and resizing andchoosing colors.

FIG. 3a shows a menu of icons representing lists of different avatarcomponents that a user can select from, such as hair, eyes, body shapeand clothing. Each list may include categories and subcategories ofcomponents. In FIG. 3a , a user can select subcategories such as longhair and straight hair to view and select from a list of all avatarhairstyles with long and straight hair. When a user selects a particularcomponent, it is added to the user's avatar profile in the form ofavatar data, including the component's ID, and applicable category,subcategories, state, color, etc.

FIG. 3b shows a further aspect of the avatar composition utility, namelya tool to select different body shape components, such as slim, heavy,buff and average. When a user selects a particular body shape component,it is added to the user's avatar profile in the form of avatar data,including the component's ID, and applicable category, subcategories,state, color, etc.

FIG. 3c shows a further aspect of the avatar composition utility, inwhich users may access a menu for selecting avatar state data. Forexample, the avatar's states include left eye component equal to mad andclosed, left eyebrow equal to mad, right eye equal to happy and open,right eyebrow equal to happy, mouth equal to smiling and open, tongueequal to out, etc. When selected, these states are individually added tothe user's avatar profile, and collectively added as avatar emotiondata, such as happy or joking.

FIG. 3d illustrates the adaptive features of the present invention. Itshows different versions of the same avatar, as created and then adaptedusing the present invention. The avatar on the far left may be theoriginal avatar, and then on the right are two different versions, eachbeing adapted in separate environments with access to the same avatardata. The avatar in the middle has components that correspond to theoriginal avatar on the far left, rendered with its own avatar componentsin its own visual style, such as hairstyle and eye color, mapped usingthe system's API. Some components of the middle avatar do not havecorresponding components in the original avatar, such as fur color andthe snout. In this instance, these components have been mapped to othercomponents in the original avatar: fur color has been mapped to skintone and snout has been mapped to nose. The result is an adapted avatarwith the appearance of a different species, yet individually adaptedfeatures that combine to retain the essence of the original avatar. Theavatar on the far right has components that correspond to the originalavatar on the far left, rendered with its own avatar components in itsown visual style, such as hair length, hair color, eye color, skin toneand face shape, mapped using the system's API. Examples of componentsthat have not been mapped include avatar height and component states.However, avatar emotion data has been mapped so that the original avatarprofile can communicate through the API whether the avatar is happy,sad, etc., and the adapted avatar can update with the appropriatechanges. The avatar also includes new components not present in theoriginal avatar, such as sword and helmet, and new body proportions suchas oversized head.

The avatar composition utility may embody one or more user workflows forguiding a user through the steps involved in creating an avatar, ormodifying an existing avatar. The avatar composition utility may alsoaccess one or more avatar templates or “types”, where each template ortype constitutes a collection of components which may be organizedhierarchically into component categories and component sub-categories.These components may relate to visual components of the avatar, asdescribed above.

A representative workflow in accordance with the method of the presentinvention is shown in FIG. 4.

In another embodiment, the avatar composition utility defines a seriesof avatar composition rules that may include, for example, minimumrequirements for composing an avatar, so as to ensure that minimum rulesfor establishing an avatar data set to render an avatar in multipleenvironments are also met.

The user may save the avatar based on the selected components. If theuser is saving the avatar for the first time, the system generates andsaves a unique alphanumeric avatar ID and an “avatar profile”. An avatarprofile includes avatar component data corresponding to each selectedcomponent as shown in FIG. 2, additional avatar component data thatdefines component customizations, such as a component's selected color,size, shape, and relative positioning on the avatar, and “avatar emotiondata”, which is a code that is generated based the avatar's selectedcombination of states. For example, if the selected states includeeyes=state_1, mouth=state_2, tongue=state_2 and body=state_3, the codeassigned to that combination of avatar emotion data may indicate thatthe avatar is “hungry”. Additional avatar component data such as thesize and relative positioning of components helps further distinguishone avatar and avatar profile from another, making both the original andany adapted forms of the avatar more unique and recognizable. Avataremotion data is useful in demonstrating the avatar's personality andemotional or physical state.

Additional avatar components may be defined by the computing device 100and saved as avatar data by defining a corresponding avatar component.In particular, non-visual data or meta data associated with a respectiveavatar may also be stored in the avatar dataset in this way, includingdata related to an emotion, experience, activity, or other non-visualcharacteristic. Accordingly, not all avatar components in an avatardataset are intended to be displayed or will be displayed when renderingthe avatar in a service environment. However, avatar components notrendered may be used by the service environment to modify other aspectsof a display, or to modify the display of other avatar components. Forexample, an avatar component storing avatar component data representingthat the user has participated in an activity, witnessed an event,completed a task, or used the avatar for a particular number of hours,may cause the service environment to display a representative icon, atitle, or change the appearance of the avatar to appear stronger, tired,or in other ways.

The avatar ID generated by the system may be displayed to the user, orthe user may create a unique username that corresponds to the ID. Theavatar profile may further include an identification of a userassociated with the avatar, either in the avatar ID itself orseparately.

Avatar profiles are stored in a server database and may be madeaccessible to Environment E through an API. As the avatar designed bythe user for Environment A may by stored in a proprietary data format ormay include proprietary avatar components, Environment A may beconfigured to derive and store a “universal” dataset for each avatarbased on the avatar dataset. The universal dataset may be stored in aformat usable by Environment E for generating a subsequent avatar.Alternatively, the API may provide for any required format conversionson demand upon receiving a request from Environment E for a particularavatar dataset, or avatar component associated with a particular user.

An Environment E may access Environment A's avatar dataset throughEnvironment A's API for the purpose of generating and mappingEnvironment E's avatar components with Environment A's. Environment Ecan ask Environment A for its entire dataset, including every individualcomponent and corresponding avatar component data, and then generate anyor all components in its own style. Environment E can ask Environment Aonly for particular subsets of information, such as all avatarcomponents and avatar component data with gender equal to female, forthe purpose of, for example, generating its own female-only avatars; orEnvironment E can ask Environment A only for all subcategories of allcategories, for the purpose of, for example, generating one simplifiedhairstyle to correspond to each subcategory. Environment E may also mapeach avatar component it generates to corresponding avatar componentdata in Environment A by adding relevant identifying tags to eachcomponent.

In one embodiment of the present invention, the API may be accessedthrough an avatar data mapping utility (not shown). Such a utility mayinclude a graphical user interface which displays available avatarcomponents and avatar data generated by Environment A. Environment E cangenerate its own corresponding avatar components in its own style, andthen upload, or drag-and-drop, each component beside Environment A'scorresponding avatar components. Each matched component automaticallygenerates a relevant identifying tag, which Environment E can export andthen use to generate adapted avatars when users connect their avatarsfrom Environment A to Environment E. As above, Environment E maygenerate and map components to each of Environment A's components, onlysome components, or only subsets of components. Such a visual utilitysimplifies and speeds the process of generating and mapping avatarcomponents and data between environments.

In instances where there is no corresponding component in Environment A,a component may be mapped to an arbitrary parallel component. Forexample, if an avatar in Environment E has the appearance of a cartoonhedgehog, avatar skin color data in Environment A may be mapped to furcolor, and avatar clothing data may be discarded. Instead of requestingthe entire avatar dataset for a particular identifier, Environment E mayrequest only avatar component data supported by Environment E.Environment E may also request only one or more avatar components fromthe API. Accordingly, any request from Environment E may specify theavatar component data requested in addition to including identificationdata. The identification data may identify a particular avatar by avataridentifier, or may include other data or identifiers associated with aparticular user, such as name or email address.

A user may enter Environment E and see an option to connect avatar savedin Environment A to Environment E. User enters unique avatar ID orusername and password created in Environment A. Environment E sendsavatar ID and password to Environment A via API. Environment A thenauthenticates identity of user. Environment E requests user's avatarcomponent data from Environment A via API, and Environment A sendsrequested avatar component data. Environment E can ask Environment A fora user's complete avatar profile, or only for avatar component data fromthat profile that is relevant to Environment E's avatars. For example,Environment E may only require a user's avatar body shape, skin colorand hair color, or only require a user's avatar eye color and emotiondata. This way, Environment E can choose to automatically modify, adapt,replace or remove any of the user's avatar components. After EnvironmentE receives the requested avatar component data, it generates an adaptedversion of the user's avatar consisting of Environment E's relevantavatar component data and presents this adapted avatar to the user.

Environment E may offer the user further avatar customization optionsusing its own avatar composition utility, allowing the user to modifyexisting avatar components, or add new avatar components not present inEnvironment A, such as accessories, clothing, weapons, etc. The user maysave the adapted avatar in Environment E, and Environment E may generatea new avatar profile of the adapted avatar. The avatar profile of theadapted avatar in Environment E may then be sent to Environment Athrough the API, and Environment A may then make relevant updates to theuser's avatar profile in Environment A, such as modifications tohairstyle or additions of new avatar components.

In an embodiment, the present system and method includes an applicationprogramming interface or API which may be integrated with a third partyservice provider's online environment. For example, in one possibleimplementation, the API may embody programming required to enable theuse of the avatar profile to populate the third party online environmentwith the avatar, or to generate an avatar derivative based on the baseavatar profile, and then populate the third party online environmentwith the resulting derivative avatar. As another illustrative example,the API may include a translator that is operable to translate theavatar profile into a set of instructions that may be processed by thesystems associated with the third party online environment to populatethe avatar or derivative avatar into the third party online environment.

The creation of avatars that are adaptive and responsive to differentonline environments and can move seamlessly from one online environmentto another online environment provides the possibility of creating astronger connection between the user and his/her avatar, because theavatar with a common set of components becomes strongly identifiable bythe user. In an embodiment, this connection with the user can beleveraged for the purpose of a variety of user engagement scenarios thatmay bring value to an avatar platform as well as its variousparticipating partners.

By adapting an existing avatar to multiple service environments, it maybe possible to reduce the amount of time spent by a user creating ormodifying avatars in each environment, which may be referred to as“onboarding” time. New digital applications are being created ormodified regularly, each with their own onboarding tasks, includingcreating user profiles or avatars. While often necessary, creatingmultiple user profiles across multiple applications is very timeconsuming. A single application to create, update and manage anadaptable avatar across multiple other applications and platforms wouldsave users time versus creating and updating different avatars for eachenvironment. For example, a user may register for a banking applicationthat shows the user's avatar's mood based on each month's personalspending, a music application that shows the user's avatar dancingwhenever music plays, and a video game where the user's avatar has theappearance of a robot. Creating an adaptable avatar once and thenconnecting to it from each of the three applications would be 75% fasterthan creating avatars separately in each service; connecting to 10 suchapplications would be over 90% faster, and so on. For applicationproviders, giving users the option to connect to their adaptable avatarsresults in faster and simpler onboarding.

Adaptable avatars may assist in establishing a unifying user experienceacross disparate applications. Each computer software application orservice environment may serve a different purpose and may include somenecessary differences in features and user interface. Nevertheless, theuser of such environments remains a single person, and so the experienceof switching between environments can feel disjointed and lackcontinuity. A personalized and recognizable avatar that may be adaptedto fit other contexts helps to establish consistency between otherwisedisparate environments. The resulting user experience may feel moreharmonious and unified. For example, switching between alocation-sharing application and a health-monitoring application whileseeing essentially the same avatar gives these very differentapplications a source of continuity, making the user's overall digitalexperience feel more seamless. As applications evolve and new ones areintroduced, an adaptable and easily updatable avatar also provides userscontinuity through time.

The present invention promotes for example environments that are basedon collaboration between different online operators who may collaborateto provide a single online environment. The system and method providesthe ability for an avatar to be rendered seamlessly across multipleassociated environments.

Adaptable avatars may increase the relevance of an application to auser. An application may be more useful when the user experience ispersonalized. An application that does not use avatars, or that usesnon-personalized avatars, may be missing a visual cue for making theapplication and its features personally relevant to users. Allowingusers to connect un-adapted portable avatars might add some relevance tothe user experience, but it risks creating an unacceptably inconsistentexperience because the avatars are not properly contextualized. Forexample, a weather forecasting application might tell the user how todress on a given day by showing a generic avatar wearing appropriateclothing, on a warm and rainy day, the avatar might appear in theapplication wearing a T-shirt and shorts and holding an umbrella. Animprovement might be to give the user an option to connect and import anexisting un-adapted avatar from another application, but this would makethe user experience visually fragmented. Still another improvement mightbe to give the user the option to create a new avatar from scratchwithin the application, but this would add a time-consumingcustomization task and give the user an additional avatar to manage. Ifsuch an application integrated with an adaptable avatar system, the userwould only need to connect a previously made avatar to the applicationto see a contextualized version of him- or herself appear in the weatherforecast automatically, thereby making it much more personally relevant.For the application provider, each adaptable avatar becomes an immediateand familiar-looking common connection between itself and the user.

Adaptable avatars may increase user engagement in a particularapplication. Two challenges faced by most applications are initiallygrabbing users' interest, and then establishing a pattern of behavior sothat they become engaged, habitual users. Adaptable avatars provide anideal mechanism for establishing such user interest and engagement.Users build an affinity for their adaptable avatars through repeated andvaried use in multiple applications. Consequently, serving apre-existing, yet adapted, avatar of a user within the context of a newapplication may make that application more interesting to the user thanapplications where either the avatar needs to be created from scratchand therefore has no history with the user, or is previously designed bythe user in another application but not adapted. For example, a videogame set in a different galaxy might allow a user to connect apre-existing adaptable avatar, and then automatically generate a newadapted alien version that captures the original avatar's essence byretaining appropriate components, such as eye color, skin tone, and faceshape, etc. Presenting such an adapted avatar at the start of the gameprovides a vehicle for instantly capturing the user's attention andimmersing the user in the game. All applications that use an adaptiveavatar system become collectively more engaging by giving users asingle, unifying visual identity that transcends any one application,thus making the entire digital experience personally meaningful andsatisfying as a whole.

Referring to FIG. 5, the present system and method may be practiced invarious embodiments. A suitably configured generic computer device, andassociated communications networks, devices, software and firmware mayprovide a platform for enabling one or more embodiments as describedabove. By way of example, FIG. 4 shows a generic computer device 100that may include a central processing unit (“CPU”) 102 connected to astorage unit 104 and to a random access memory 106. The CPU 102 mayprocess an operating system 101, application program 103, and data 123.The operating system 101, application program 103, and data 123 may bestored in storage unit 104 and loaded into memory 106, as may berequired. Computer device 100 may further include a graphics processingunit (GPU) 122 which is operatively connected to CPU 102 and to memory106 to offload intensive image processing calculations from CPU 102 andrun these calculations in parallel with CPU 102. An operator 107 mayinteract with the computer device 100 using a video display 108connected by a video interface 105, and various input/output devicessuch as a keyboard 110, mouse 112, and disk drive or solid state drive114 connected by an interface 109. In known manner, the mouse 112 may beconfigured to control movement of a cursor in the video display 108, andto operate various graphical user interface (GUI) controls appearing inthe video display 108 with a mouse button. The disk drive or solid statedrive 114 may be configured to accept computer readable media 116. Thecomputer device 100 may form part of a network via a network interface111, allowing the computer device 100 to communicate through wired orwireless communications with other suitably configured data processingsystems (not shown). The generic computer device 100 may be embodied invarious form factors including desktop and laptop computers, andwireless mobile computer devices such as tablets, smart phones and superphones operating on various operating systems. It will be appreciatedthat the present description does not limit the size or form factor ofthe computing device on which the present system and method may beembodied.

Use Cases

As will be appreciated, the present system and method may be adapted forvarious use cases. For example, the present system and method may beused to link a user's avatar ID and avatar profile to websites and havetheir unique versions of a user appear automatically. A user's avatar IDand avatar profile may also be linked to a video game to play as are-rendered version of the user's avatar in that game's world.Alternatively, the system of the present invention may be linked to asocial networking platform, and sign in to the social networking usingsocial networking login information.

The system of the present invention may be configured to extractinformation relevant to a user to add context to the rendering of theavatar. For example, the system may connect to social media channels inorder to extract information regarding the interests of a user, topicsor themes of current interest to the user, and so on. This informationmay be used to adapt content including avatars, as explained herein.

In another use case, the system and method may automatically renderdifferent versions of avatars for different occasions or brandingpurposes. For example, the avatar can automatically turn into a zombieon Halloween, or be modified by clothing or features to represent apopular character in a show.

In another use case, the system and method may be used to improvedigital advertising and web technical support by presentingcomplementary avatars based on a user's avatar component data. Thesystem and method can also improve user profiling by compiling a user'sphysiological avatar data, such as height and body shape, behavioralavatar data, such as past and current body poses and postures, andemotional history based on past and current avatar emotion data, acrossmultiple environments.

In another use case, the system and method may be used to improvedigital advertising by presenting the user's avatar in onlineadvertisements. The system and method may also be used to improveadvertising targeting by using avatar component data to gleanphysiological information, such as height and body shape, or emotionalstate based on current or historical avatar emotion data, to serve morerelevant ads.

In another use case, the system and method can improve content targetingby using avatar component data to glean physiological information, suchas height and body shape, or emotional state based on current orhistorical avatar emotion data, to serve more relevant news, stories,games and videos.

In another use case, users' avatar data may be categorized in aggregateto ascertain distributions in user physiological, behavioural, emotionand other data within and between populations. Aggregate data may beused to correlate avatar data with other digital user activities, suchas online shopping and content consumption. Historical and currentaggregate data may also be used to build predictive models forreal-world activities, such as economic and sociological trends.

In another use case, the system and method can improve personalizedcontent and storytelling by presenting different versions of a user'savatar in custom comics and animation.

In another use case, the system and method may provide brandedpersonalized emoticon packs featuring a user's avatar to represent aparticular theme or particular well-known character.

In another use case, the system and method can present custom versionsof a user's avatar in e-greeting cards.

In another use case, the present system and method can present customversions of a user's avatar in different outfits based on body data.

These various use cases may be adapted to virtually any type of media ordigital environment.

While illustrative embodiments of the invention have been describedabove, it will be appreciated that various changes and modifications maybe made without departing from the scope of the present invention.

In further aspects, the disclosure provides systems, devices, methods,and computer programming products, including non-transientmachine-readable instruction sets, for use in implementing such methodsand enabling the functionality described previously.

Although the disclosure has been described and illustrated in exemplaryforms with a certain degree of particularity, it is noted that thedescription and illustrations have been made by way of example only.Numerous changes in the details of construction and combination andarrangement of parts and steps may be made. Accordingly, such changesare intended to be included in the invention, the scope of which isdefined by the claims.

Except to the extent explicitly stated or inherent within the processesdescribed, including any optional steps or components thereof, norequired order, sequence, or combination is intended or implied. As willbe will be understood by those skilled in the relevant arts, withrespect to both processes and any systems, devices, etc., describedherein, a wide range of variations is possible, and even advantageous,in various circumstances, without departing from the scope of theinvention, which is to be limited only by the claims.

What is claimed is:
 1. A system comprising: a processor; a graphicaluser interface coupled to the processor, the graphical user interfacecomprising an input device and a display screen; and memory coupled tothe processor and storing instructions that, when executed by theprocessor, cause the system to perform operations comprising: receiving,via the input device of the graphical user interface, selection of afirst avatar dataset comprising a first plurality of avatar componentsassociated with a first user; retrieving, from a computing device incommunication with the system over a network, a second avatar datasetcomprising a second plurality of avatar components associated with asecond user; modifying one or more of: the first plurality of avatarcomponents in the first avatar dataset and the second plurality ofavatar components in the second avatar dataset; generating a firstavatar based on the first avatar dataset; generating a second avatarbased on the second avatar dataset; and displaying, on the displayscreen of the graphical user interface, the first avatar and the secondavatar.
 2. The system of claim 1, wherein an avatar component from thesecond avatar dataset includes one or more of: a category name, acategory type, a gender, a subcategory name, and a state.
 3. The systemof claim 2, wherein retrieving the second avatar dataset from thecomputing device includes retrieving a subset of a total number ofavailable avatar components stored on the computing device based on thesubset of avatar components each having a common characteristic, thecommon characteristic including one or more of: an identical categoryname, an identical category type, an identical gender, an identicalsubcategory name, and an identical state.
 4. The system of claim 1,wherein the second avatar dataset is retrieved from the second computingdevice over an application programming interface.
 5. The system of claim4, wherein retrieving the second avatar dataset includes performing aformat conversion on the second avatar dataset via the applicationprogramming interface.
 6. The system of claim 1, wherein the memoryfurther stores instructions for causing the system to perform operationscomprising: displaying at least a portion of the first plurality ofavatar components and at least a portion of the second plurality ofavatar components together on the display screen of the graphical userinterface; receiving, via the input device of the graphical userinterface, a selection of an avatar component from the plurality ofdisplayed avatar components; generating a first adapted avatar based onthe first avatar and the selected avatar component; generating a secondadapted avatar based on the second avatar and the selected avatarcomponent; and displaying, on the display screen of the graphical userinterface, the first adapted avatar and the second adapted avatar. 7.The system of claim 1, wherein the memory further stores instructionsfor causing the system to perform operations comprising: determiningthat the first user and the second user participated in an activity;modifying the first avatar and the second avatar in response todetermining the first user and second user participated in the activity;and displaying the modified first and second avatars on the displayscreen of the graphical user interface.
 8. The system of claim 6,wherein modifying the first avatar includes one or more of: displayingan icon with the first avatar, displaying a title with the first avatar,and changing an appearance of the first avatar.
 9. The system of claim8, wherein changing the appearance of the first avatar includes one of:changing the appearance of the first avatar to appear stronger, orchanging the appearance of the first avatar to appear tired.
 10. Thesystem of claim 1, wherein retrieving the second avatar dataset includesmapping an avatar component in the second avatar dataset to an avatarcomponent in the first avatar dataset.
 11. The system of claim 10,wherein mapping the avatar component in the second avatar dataset to theavatar component in the first avatar dataset includes discarding one ormore avatar components from one or more of: the first plurality ofavatar components, and the second plurality of avatar components. 12.The system of claim 1, wherein displaying the first avatar and thesecond avatar includes displaying the first avatar and the second avatarwithin a video game.
 13. The system of claim 1, wherein displaying thefirst avatar and the second avatar includes displaying the first avatarand the second avatar on a social networking platform in communicationwith the system.
 14. The system of claim 1, wherein displaying the firstavatar and the second avatar includes displaying the first avatar andthe second avatar within a messaging application.
 15. The system ofclaim 1, wherein displaying the first avatar and the second avatarincludes displaying the first avatar and the second avatar within one ormore of a custom comic and a custom animation.
 16. The system of claim1, wherein displaying the first avatar and the second avatar includesdisplaying the first avatar and the second avatar within a group ofpersonalized emoticons.
 17. The system of claim 1, wherein displayingthe first avatar and the second avatar includes displaying the firstavatar and the second avatar within an e-greeting card.
 18. The systemof claim 1, wherein displaying the first avatar and the second avatarincludes modifying an outfit for the first avatar and an outfit for thesecond avatar based on body data for the first user and body data forthe second user.
 19. A computer-implemented method comprising:receiving, by a computer system via an input device of a graphical userinterface coupled to the computer system, selection of a first avatardataset comprising a first plurality of avatar components associatedwith a first user; retrieving, by the computer system from a computingdevice in communication with the computer system over a network, asecond avatar dataset comprising a second plurality of avatar componentsassociated with a second user; modifying, by the computer system, one ormore of: the first plurality of avatar components in the first avatardataset and the second plurality of avatar components in the secondavatar dataset; generating, by the computer system, a first avatar basedon the first avatar dataset; generating, by the computer system, asecond avatar based on the second avatar dataset; and displaying, by thecomputer system on a display screen of the graphical user interface, thefirst avatar and the second avatar.
 20. A non-transitorycomputer-readable medium storing instructions that, when executed by acomputer system, cause the computer system to perform operationscomprising: retrieving, from a computing device in communication withthe computer system over a network, a second avatar dataset comprising asecond plurality of avatar components associated with a second user;modifying one or more of: the first plurality of avatar components inthe first avatar dataset and the second plurality of avatar componentsin the second avatar dataset; generating a first avatar based on thefirst avatar dataset; generating a second avatar based on the secondavatar dataset; and displaying, on a display screen of the graphicaluser interface, the first avatar and the second avatar.